var express = require('express')
var bodyParser = require('body-parser')

var app = express()

app.use('/public/',express.static('./public'))

// 第一个参数，表示，当渲染以.art结尾的文件的时候，使用art-template模板引擎
//  express-art-template  专门用来在Expresszhong 把art-template整合到Express中
//  虽然没有加载，但是必须下载，因为express-art-template包依赖了art-template
app.engine('html',require('express-art-template'))

//Express 为Response响应对象提供了一个方法：render
// render方法默认是不可以使用，但是如果配置了模板引擎就可以使用了
// res.render('html模板名'{模板数据})
// 第一个参数不能写路径，默认会去项目中的views目录查找该模板文件
// 也就是说Express 有一个约定： 开发人员把所有的视图文件到 views 目录中

// 配置body-parse 中间件
app.use(bodyParser.urlencoded({ extended:false }))
app.use(bodyParser.json())

var comments = [
    {
        name:'张三',
        message:'今天天气不错',
        dateTime:'2018-9-10'
    },
    {
        name:'张三',
        message:'今天天气不错',
        dateTime:'2018-9-10'
    },
    {
        name:'张三',
        message:'今天天气不错',
        dateTime:'2018-9-10'
    },
    {
        name:'张三',
        message:'今天天气不错',
        dateTime:'2018-9-10'
    },
    {
        name:'张三',
        message:'今天天气不错',
        dateTime:'2018-9-10'
    },
    {
        name:'张三',
        message:'今天天气不错',
        dateTime:'2018-9-10'
    }
]
app.get('/',function (req,res) {
    res.render('index.html',{
        comments: comments
    })
})

app.get('/post',function (req,res) {
    res.render('post.html')
})

// get请求提价评论
// app.get('/pinglun',function (req,res) {
//     console.log(req.query)
//
//     var comment = req.query
//     comment.dateTime = '2017-03-12'
//     comments.unshift(comment);
//     // res.statusCode = 302
//     // res.setHeader('Location','/')
//     // res.end()
//     res.redirect('/')
//
// })

// 我们可以利用不同的请求方法 请求一个路径多次
app.post('/post',function (req,res) {
    // 1.先获取表单请求体数据
    // 2.处理
    // 3.发送响应
    // req.query 只能拿get请求参数

    //post
    console.log(req.body)
    var comment = req.body
    comment.dateTime = '2017-03-12'
    comments.unshift(comment);
    res.redirect('/')

})

app.get('/admin',function (req,res) {
    res.render('admin/index.html',{
        title:'这是一个管理系统'
    })
})

app.listen(3000,function () {
    console.log('服务已经启动')
})